package de.koller.altitude;

import de.koller.aframe.gl.Camera;
import de.koller.altitude.engine.entity.player.IActivePlayerEntity;
import de.koller.altitude.engine.physics.Physics;
import de.koller.altitude.input.AInput;
import de.koller.altitude.render.ATextures;
import de.koller.altitude.render.obj.IVisualObject;

public class Altitude {

	private static ARoot aroot;
	
	private Altitude() {}

	static void setRoot( ARoot aroot ) { Altitude.aroot = aroot; }
	
	public static void add( IVisualObject visualObject ) {
		aroot.render.container.visualObjects.add( visualObject );
	}
	
	public static void remove( IVisualObject visualObject ) {
		aroot.render.container.visualObjects.remove( visualObject );
	}
	
	public static ATextures texture() {
		return aroot.render.textures;
	}
	
	public static Camera camera() {
		return aroot.render.camera;
	}

	public static long time() {
		return aroot.getGameTime();
	}
	
	public static Physics physics() {
		return aroot.engine.physics;
	}
	
	public static IActivePlayerEntity activePlayer() {
		return aroot.engine.getActivePlayer();
	}
	
	public static AInput input() {
		return aroot.input;
	}
	
}
